package com.ctshk.rpc.order.bus.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.ctshk.common.model.BaseEntity;
import com.ctshk.common.model.IBaseEntity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 巴士订单旅客信息
 * </p>
 *
 * @author 彭柳霖
 * @since 2021-02-24
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_bus_order_tourist")
@ApiModel(value="BusOrderTourist对象", description="巴士订单旅客信息")
public class BusOrderTourist extends BaseEntity implements IBaseEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "所属订单")
    private Long orderId;

    @ApiModelProperty(value = "旅客类型（1：成人 2：小童）")
    private String touristType;

    @ApiModelProperty(value = "旅客姓")
    private String surname;

    @ApiModelProperty(value = "旅客名")
    private String name;

    @ApiModelProperty(value = "旅客姓名")
    private String touristName;

    @ApiModelProperty(value = "性别")
    private Integer gender;

    @ApiModelProperty(value = "出生日期")
    private LocalDate birthday;
    
    @ApiModelProperty(value = "价格")
    private BigDecimal price;
    
    @ApiModelProperty(value = "证件类型")
    private Long certificatesType;
    
    @ApiModelProperty(value = "证件号码")
    private String certificatesNumber;
    
    @ApiModelProperty(value = "联系人手机区号id")
    private Long contactMobileAreaCodeId;

    @ApiModelProperty(value = "联系人手机区号")
    private String contactMobileAreaCode;

    @ApiModelProperty(value = "联系人手机")
    private String contactMobile;

    @ApiModelProperty(value = "座位号")
    private String seatsNumber;

    @ApiModelProperty(value = "保险id")
    private Long insuranceId;

    @ApiModelProperty(value = "保险名称")
    private String insuranceName;

    @ApiModelProperty(value = "保险开始日期")
    private LocalDateTime insuranceStartDate;

    @ApiModelProperty(value = "保险结束日期")
    private LocalDateTime insuranceEndDate;

    @ApiModelProperty(value = "保险单号")
    private String insuranceNumber;

    @ApiModelProperty(value = "保险价格")
    private BigDecimal insurancePrice;

    @ApiModelProperty(value = "创建人")
    private Long createId;

    @ApiModelProperty(value = "修改人")
    private Long modifiedId;

    @ApiModelProperty(value = "删除标识")
    private Integer isDeleted;

    @ApiModelProperty("订单成本ID")
    private Long costId;
}
